#ifndef T12_INC_PROC_H_
#define T12_INC_PROC_H_

#ifdef __cplusplus
extern "C" {
#endif

#include "main.h"

/**
 * @brief 初始化进程并加入优先级队列
 */
void initProcesses();

/**
 * @brief 获取adc
 * @return void* double*
 */
void adcConvertProcess();

/**
 * @brief 使用当前温度计算出油门
 * @return double: PID result
 */
double temperaturePidCtrlProcess();

/**
 * @brief 检测输入
 * @return void*
 */
void inputActionCheckerProcess();

/**
 * @brief 按键检测
 * @return void*
 */
void *keyScanningProcess();

/**
 * @brief  PWM关闭进程
 */
void pwmCloseProcess();

/**
 * @brief 刷新OLED屏幕
 */
void flashScreenDataProcess();

/**
 * @brief 获取当前日期与时间
 */
void getDateTimeProcess();

/**
 * @brief
 * @param  x                desc
 * @param  y                desc
 * @param  index            desc
 */
void oled_show_image(uint8_t x, uint8_t y, uint8_t index);

void powerControlProcess();

/**
 * @brief
 */
void errorCheckerProcess();

#ifdef __cplusplus
}
#endif

#endif // T12_INC_PROC_H_
